|
Roxen is a free software web server produced by Roxen Internet Software, a company based in Linköping, Sweden and named after the nearby lake Roxen. It is released under the GNU General Public License. Roxen originally appeared as Spinner in the mid-1990s and was written in a C-like language called uLPC or Pike. During its heyday, Roxen was used by large companies such as RealNetworks, Xmission〔()〕 and MCI.〔()〕 Roxen was often ahead of its time,〔(Product Review: The Roxen Challenger Web Server )〕 featuring a web-based Graphical user interface (GUI) administration interface,〔(Install Roxen web server on centos )〕 loadable modules that could be written in several languages including Pike and later Java, dynamic content generation with a comprehensive caching system, replication systems for multi-headed servers, and an embedded SQL server for data-heavy server operations (as well as broad support for other databases).〔(Roxen: How Much Is Too Much Functionality? )〕 Roxen was built to meet the needs of content creators, so its features and facilities were superb.〔(Roxen: How Much Is Too Much Functionality? )〕 == RXML == Much of Roxen's power is in an innocuous feature that was born in Roxen's early history: a server-side markup/scripting language called RXML (RoXen Macro Language〔(Roxen Concepts )〕). This language provides much of the richness of a scripting language like Java or Perl, but did so in a language meaningful and familiar to content creators. Because it was extensible, many Roxen sites were developed using the MVC pattern. Roxen modules typically provide their functionality by extending RXML, but the suite provided off-the-shelf was pretty comprehensive: Notable tags include: * <if>〔(If Tags )〕 for conditional content (as well as tags for else, case, for, etc.) * <tablify>〔( * <cache>〔( * <gbutton>〔( * <diagram>〔( * <emit>〔( All RXML tags contain inline documentation which is used to fill out the online manual that is included on both Roxen's documentation site〔(Roxen's documentation site )〕 and with every default server installation. RXML also provides a variable system; all variables exist within a domain or "scope", e.g. form fields passed to the query are accessible as form.fieldname, user defined variables are stored in the var scope. Unfortunately, in its attempt to explain the two methods of variable instantiation, the documentation confuses most people. In most cases, variables are referred to by name, but it is also possible to instantiate (insert the value of) a variable anywhere, in- or out-side of tags/markup, using an XML entity-style markup, e.g. &page.path;. Optionally, one can specify encoding/escaping of the instance, e.g. &form.username:mysql; to insert a user-submitted value from a form safely into an SQL database or &page.path:js; to make a variable javascript safe. Much of the functionality achieved by RXML can be accomplished using an interpreted programming language like PHP which is embedded within a standard web server such as Apache HTTP Server as a plug-in 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Roxen (web server)」の詳細全文を読む スポンサード リンク
|